package com.wst.system.server.service;

import com.alibaba.fastjson2.JSONObject;
import com.wst.system.server.entity.SysOpenPermission;
import com.wst.system.server.entity.vo.PageSearchVo;
import com.wst.system.server.entity.vo.SysOpenPermissionVo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wst.system.config.exception.GlobalExcetion;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author X.I.O
 * @since 2025-01-16
 */
public interface SysOpenPermissionService extends IService<SysOpenPermission> {

    public SysOpenPermission saveSysOpenPermission(SysOpenPermission sysopenpermission) throws GlobalExcetion;

    public SysOpenPermission updateSysOpenPermissionById(SysOpenPermission sysopenpermission) throws GlobalExcetion;

    public SysOpenPermission saveOrUpdateSysOpenPermission(SysOpenPermissionVo sysopenpermissionVo) throws GlobalExcetion;

    public JSONObject page(PageSearchVo vo) throws GlobalExcetion;

    public SysOpenPermission getSysOpenPermissionByAppIdAndApiId(String appId,String apiId) throws GlobalExcetion;

    public List<SysOpenPermission> getSysOpenPermissionListByAppId(String appId) throws GlobalExcetion;
}